package com.muk.meis;

import java.util.EnumSet;
import java.util.LinkedHashMap;
import java.util.Locale;
import java.util.Map;

public class MEISConstance {
	
	public static String USER_PASS_LOGIN = "USER_PASS_LOGIN";
	public static String ADMIN_ROLE = "admin";
	
	public static enum SCALE {
		S1("ขนาดที่ 1 (1-120 คน)"), S11("นักเรียน 1-20 คน", true), S12(
				"นักเรียน 21-40 คน", true), S13("นักเรียน 41-60 คน", true), 
				S14("นักเรียน 61-80 คน", true), 
				S15("นักเรียน 81-100 คน", true), 
				S16("นักเรียน 101-120 คน", true), 
				S2("ขนาดที่ 2 (121-200 คน)"), 
				S3("ขนาดที่ 3 (201-300 คน)"), 
				S4("ขนาดที่ 4 (301-499 คน)"), 
				S5("ขนาดที่ 5 (500-1,499 คน)"), 
				S6("ขนาดที่ 6 (1,500-2,499 คน)"), 
				S7("ขนาดที่ 7 (>= 2,500 คน)");

		private String message;
		private boolean isSubScale = false;
		
		private SCALE(String msg) {
			message = msg;
		}

		private SCALE(String msg, boolean isSubScale) {
			message = msg;
			this.isSubScale = isSubScale;
		}

		public String getMessageDisplay() {
			return message;
		}
		
		public boolean isSubScale(){
			return isSubScale;
		}
	};

	public static enum DISTRICT {
		MANG(1, "เมืองมุกดาหาร"), NI_KOM(2, "นิคมคำสร้อย"), DON_TAN(3, "ดอนตาล"), DONG_LONG(
				4, "ดงหลวง"), KOM_SA_E(5, "คำชะอี"), VAN_YA(6, "หว้านใหญ่"), NONG_SONG(
				7, "หนองสูง");
		private int code;
		private String message;

		private static Map<Integer, String> map = new LinkedHashMap<Integer, String>();
		static {
			for (DISTRICT district : EnumSet.allOf(DISTRICT.class)) {
				map.put(new Integer(district.getCode()), district.getMessageDisplay());
			}
		}
		private DISTRICT(int code, String msg) {
			this.code = code;
			this.message = msg;
		}

		public int getCode() {
			return code;
		}

		public String getMessageDisplay() {
			return message;
		}
		
		public static String getMessageDisplay(Integer code){
			return map.get(code);
		}

	};

	public static enum GENDER {
		MAN, GIRL
	};
	
	public static enum REPORT_BY_DISTRICT {
		 S11(1,20), S12(21,40), S13(41,60), S14(61,80), S15(81,100), S16(101,120), S2(121,200), 
		 S3(201,300), S4(301,499), S5(500,1499), S6(1500,2499), S7(2500,Integer.MAX_VALUE);
		 private int lower;
		 private int upper;
	     private REPORT_BY_DISTRICT(int lower, int upper){
	    	 this.lower = lower;
	    	 this.upper = upper;
	     }
	     
	     
	}

	public static void main(String[] args) {
		java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat(
				"dd MMMM yyyy HH:mm:ss", new Locale("th", "TH"));
		System.out.println(sdf.format(new java.util.Date()));
		System.out.println(java.util.Locale.getDefault());
	}

}
